#ifndef GPIO_PIN_H
#define GPIO_PIN_H

#define GET_PIN(gpiox, pin) ((gpiox << 8) | pin) // 获取GPIO引脚编号
#define GET_GPIOX(pin) ((pin >> 8) & 0xFF)       // 获取GPIO端口
#define GET_PIN_NUM(pin) (pin & 0xFF)            // 获取GPIO引脚号

#define pin_read(pin) GPIO_ReadOutputDataBit(GET_GPIOX(pin), GET_PIN_NUM(pin))       // 读取GPIO引脚状态
#define pin_write(pin, value) GPIO_WriteBit(GET_GPIOX(pin), GET_PIN_NUM(pin), value) // 设置GPIO引脚状态

#endif